The traditional public switched telephone network (“PSTN”) operates on an anonymous calling paradigm. The only requirement is the knowledge and use of a phone number to establish a request (ring) for communications. This means that as long as a caller knows the telephone number of the receiver, that caller can ring the receiver in an attempt to establish audio communications with that receiver. There are many benefits to this model that are well attested by the success of the PSTN today. Next generation Internet Protocol (“IP”) based communications technologies, unlike the PSTN, are developed under an open system environment rooted in the Internet-centric paradigm. Accordingly, the Internet-centric paradigm is not anonymous, but instead demands identification and authorization of the caller. Session Initiation Protocol (“SIP”) allows for full session establishment and management but requires a degree of trust that is not typically available in the enterprise or provider network. SIP is a proposed standard that may be used to initiate, modify, and terminate an interactive user session that involves multimedia elements, such as voice (audio), video, instant messaging, online games and virtual reality. In particular, SIP provides a signaling and call setup protocol for IP-based communications that can support a superset of the call processing functions and features present in the PSTN. The SIP protocol by itself does not define these features, but instead, focuses on call setup and signaling. The SIP protocol does, however, enable the building of the PSTN features in network elements known as proxy servers and user agents.
A user agent is the client application used with a particular network protocol; the phrase is most commonly used in reference to those which access the World Wide Web (“WWW”). Web user agents range from web browsers to search engine crawlers, as well as mobile phones, screen readers and Braille browsers used by people with disabilities. When Internet users visit a web site, a text string is generally sent to identify the user agent to the server. This text string forms part of the hypertext transfer protocol (“HTTP”) request, prefixed with user-agent and typically includes information such as the application name, version, host operating system, and language. Internet bots, such as web crawlers, often also include a uniform resource locator (“URL”) and/or e-mail address so that the webmaster can contact the operator of the bot. A bot is a common phrase on the Internet for a software program that is a software agent. A bot interacts with other network services intended for people as if it were a person and typically it is used to gather information.
A proxy server is a computer that offers a computer network service to allow clients to make indirect network connections to other network services. A client connects to the proxy server, then requests a connection, file, or other resource available on a different server. The proxy server provides the resource either by connecting to the specified server or by serving it from its memory cache.
The SIP protocol acts in concert with several other protocols and is only involved in the signaling portion of a communication session. SIP acts as a carrier for the session description protocol (“SDP”), which describes the media content of the session, e.g. what IP ports to use, the codec being used, the specific media format, etc. In typical use, SIP “sessions” are packet streams of the Real-time Transport Protocol (“RTP”) where RTP is the carrier for the actual voice or video content itself.
As multimedia collaborative communications emerge as commonplace, a result of Internet-centric protocols and mobility technologies, it is desirable to have a system or mechanism that can provide the function of the anonymous calling capabilities available to the legacy PSTN circuit switched environment. In addition, there should be a method for filtering against contextual media types.
One approach to provide security and to establish inter-domain trust on a session-by-session basis is defined by the work of the Internet Engineering Task Force (“IETF”) on the use of Certificate Authorities. A Certificate Authority is an entity, which issues digital certificates for use by other parties, and is an example of a trusted third party. A Certificate Authority will issue a public key certificate that attests that the public key contained in the certificate belongs to the person, organization, server, or other entity noted in the certificate. A Certificate Authority's obligation in such schemes is to verify an applicant's credentials, so that users (e.g., relying parties) can trust the information in the Certificate Authority's certificates. This approach however requires many predefined logistics and systems that are complex to administer and may hinder the mobility and portability of calls; moreover, they are simply not available or practical in a typical anonymous model. There are also questions of scalability given the number of PSTN calls that occur daily on an anonymous basis.
What is desired is an arrangement under which trusted peer-to-peer SIP (or any similar multimedia protocol) communications can be provided against contextual media types for media session calls where users have complete control over the who, the where, the when and the how of the media session.